package com.ruoyi.community.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 访客对象 visit
 * 
 * @author lj
 * @date 2022-02-22
 */
@ApiModel(value = "访客表")
public class Visit extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    @ApiModelProperty(value = "ID")
    private Long id;

    /** 被访人ID */
    @ApiModelProperty(value = "被访人ID")
    @Excel(name = "被访人ID")
    private Long userId;

    /** 被访人姓名 */
    @ApiModelProperty(value = "被访人姓名")
    @Excel(name = "被访人姓名")
    private String name;

    /** 被访人住址 */
    @ApiModelProperty(value = "被访人住址")
    @Excel(name = "被访人住址")
    private String address;

    /** 开始时间 */
    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 结束时间 */
    @ApiModelProperty(value = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 拜访者ID */
    @ApiModelProperty(value = "拜访者ID")
    @Excel(name = "拜访者ID")
    private Long visitUserId;

    /** 拜访人姓名 */
    @ApiModelProperty(value = "拜访人姓名")
    @Excel(name = "拜访人姓名")
    private String visitName;

    /** 身份证 */
    @ApiModelProperty(value = "身份证")
    @Excel(name = "身份证")
    private String identityCard;

    /** 手机号 */
    @ApiModelProperty(value = "手机号")
    @Excel(name = "手机号")
    private String phonenumber;

    /** 访问原因 */
    @ApiModelProperty(value = "访问原因")
    @Excel(name = "访问原因")
    private String reason;

    /** 车牌号 */
    @ApiModelProperty(value = "车牌号")
    @Excel(name = "车牌号")
    private String carNumber;

    /** 拜访人住址 */
    @ApiModelProperty(value = "拜访人住址")
    @Excel(name = "拜访人住址")
    private String visitAddress;

    /** 健康状态 */
    @ApiModelProperty(value = "健康状态,字典:health_status")
    @Excel(name = "健康状态")
    private Integer healthStatus;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty(value = "删除标志")
    private Integer delFlag;

    /** 创建时间 */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creatTime;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }
    public void setVisitUserId(Long visitUserId) 
    {
        this.visitUserId = visitUserId;
    }

    public Long getVisitUserId() 
    {
        return visitUserId;
    }
    public void setVisitName(String visitName) 
    {
        this.visitName = visitName;
    }

    public String getVisitName() 
    {
        return visitName;
    }
    public void setIdentityCard(String identityCard) 
    {
        this.identityCard = identityCard;
    }

    public String getIdentityCard() 
    {
        return identityCard;
    }
    public void setPhonenumber(String phonenumber) 
    {
        this.phonenumber = phonenumber;
    }

    public String getPhonenumber() 
    {
        return phonenumber;
    }
    public void setReason(String reason) 
    {
        this.reason = reason;
    }

    public String getReason() 
    {
        return reason;
    }
    public void setCarNumber(String carNumber) 
    {
        this.carNumber = carNumber;
    }

    public String getCarNumber() 
    {
        return carNumber;
    }
    public void setVisitAddress(String visitAddress) 
    {
        this.visitAddress = visitAddress;
    }

    public String getVisitAddress() 
    {
        return visitAddress;
    }
    public void setHealthStatus(Integer healthStatus) 
    {
        this.healthStatus = healthStatus;
    }

    public Integer getHealthStatus() 
    {
        return healthStatus;
    }
    public void setDelFlag(Integer delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() 
    {
        return delFlag;
    }
    public void setCreatTime(Date creatTime) 
    {
        this.creatTime = creatTime;
    }

    public Date getCreatTime() 
    {
        return creatTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("name", getName())
            .append("address", getAddress())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("visitUserId", getVisitUserId())
            .append("visitName", getVisitName())
            .append("identityCard", getIdentityCard())
            .append("phonenumber", getPhonenumber())
            .append("reason", getReason())
            .append("carNumber", getCarNumber())
            .append("visitAddress", getVisitAddress())
            .append("healthStatus", getHealthStatus())
            .append("delFlag", getDelFlag())
            .append("creatTime", getCreatTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
